/**
 * 
 */
package com.ideal.trsdata.dao;

import java.util.List;
import java.util.Map;

import com.ideal.trsdata.model.BusiModel;
import com.ideal.trsdata.model.DeptModel;
import com.ideal.trsdata.model.GpsInfoModel;
import com.ideal.trsdata.model.PeriodModel;
import com.ideal.trsdata.model.ProductModel;
import com.ideal.trsdata.model.TrsDataWarn;
import com.ideal.trsdata.model.TrsModel;

/**
 * @作者 杨鹏
 * @创建日期 May 22, 2009
 */
public interface ITrsDataDao {
	List<TrsModel> getTmpProv(Map map)throws Exception;
	List<TrsModel> getTmp(Map map)throws Exception;
	 List<TrsModel> getTmp2()throws Exception;
	TrsModel getSigTmp()throws Exception;
	TrsModel getCustomer(TrsModel trs)throws Exception;
	List<Integer> getCONTRACT(TrsModel trs) throws Exception;
	List<Integer> getOFFERINGId(TrsModel trs) throws Exception;
	List<Integer> getPRODUCT(Integer id) throws Exception;
	TrsModel getrecommend(String id) throws Exception;
	String getGrade(TrsModel trs) throws Exception;
	ProductModel getProductSpeceId(Integer id) throws Exception;
	String getDownGrade(TrsModel trs)throws Exception;
	String getRegionName(String regionCode)throws Exception;
	
	void insertTrs(TrsModel trs)throws Exception;
	void insertWarn(TrsDataWarn warn)throws Exception;
	void insertFlow(TrsModel trs)throws Exception;
	void deleteTrs(TrsModel trs)throws Exception;
	void updateTmpTrs(TrsModel trs)throws Exception;
	void updateTmpTrsFlag(Map map)throws Exception;
	void updateTmpTrsErr(Map map)throws Exception;
	void updateSigTmpFlag(Integer trsId)throws Exception;
	
	String getDesc(TrsModel trs)throws Exception;
	ProductModel getRecommend(String code)throws Exception;
	
	ProductModel getRecommend2(ProductModel code)throws Exception;
	
	List<String> getIndustryId(TrsModel trs)throws Exception;
	
	List<String> getPropertyValue(TrsModel trs)throws Exception;
	
	List<String> getManyProperty(TrsModel trs)throws Exception;
	
	String getPropertyValue(Map map)throws Exception;
	
	public List<ProductModel> getProperyList(Map map)throws Exception;
	
	public List<ProductModel> getCustomerProduct(TrsModel trs)throws Exception;
	
	
	public List<String> getSt(String key)throws Exception;
	public List<String> getRe(String key)throws Exception;
	
	public TrsModel getCus(Integer i)throws Exception;
	public List<TrsModel>getListCus(Map map)throws Exception;
	
	public String getParentId(TrsModel trs)throws Exception;
	
	//判断是否为保密电话
	public String getPhoneType(TrsModel trs)throws Exception;
	
	//地址编码处理
	public String getCusCode(TrsModel trs) throws Exception;
	
	//得到部门
	public List<DeptModel> getDept(TrsModel trs)throws Exception;
	
	//部门电话处理
	public List<DeptModel> getDeptTel(DeptModel d)throws Exception;
	
	
	//部门列表
	public List<DeptModel> getDept_Tel(TrsModel trs)throws Exception;
	
	//部门总数
	public Integer getDeptCount(TrsModel trs)throws Exception;
	
	//部门地址处理
	public String getDeptAddredd(DeptModel d)throws Exception;
	
	
	//得到电话
	public List<TrsModel> getTel(TrsModel cus)throws Exception;
	
	/**
	 * 三统一增加集团业务( 张智 2010-09-20)
	 */
	//查询政企集团业务
	public List<String> getOrgBusinessInfos(TrsModel cus)throws Exception;
	
	//查询百事通加盟有效期
	public List<PeriodModel> getOrgBstjmValid(TrsModel cus)throws Exception;
	
	//更新集团业务
	public void updateOrgBusiness(TrsModel trs)throws Exception;
	
	//查询集团业务(订餐)
	public Integer getFoodBusinessInfo(TrsModel cus)throws Exception;
	
	//查询集团业务(订房)
	public Integer getHouseBusinessInfo(TrsModel cus)throws Exception;
	
	//查询集团业务(百事通加盟)
	public Integer getBstBusinessInfo(TrsModel cus)throws Exception;
	
	//查询集团业务(优惠券)
	public Integer getCouponBusinessInfo(TrsModel cus)throws Exception;
	
	//查询集团业务(TRS)
	public Integer getTRSBusinessInfo(TrsModel cus)throws Exception;
	
	//获取经纬度
	public GpsInfoModel getGpsInfo(TrsModel cus)throws Exception;
	/**
	 * 获取业务信息 2012-02-14修改
	 */
	public List<BusiModel> getBusiInfo(TrsModel cus) throws Exception;
	
	//查询是否有下级部门
	public String getHasDept(TrsModel cus)throws Exception;
}
